[
    {
        "algorithm": "movement_sparsity",
        "params": {
            "warmup_start_epoch": 1,
            "warmup_end_epoch": 4,
            "importance_regularization_factor": 0.02,
            "enable_structured_masking": true
        },
        "sparse_structure_by_scopes": [
            {"mode": "block", "sparse_factors": [32, 32], "target_scopes": "{re}.*BertAttention.*"},
            {"mode": "per_dim", "axis": 0, "target_scopes": "{re}.*BertIntermediate.*"},
            {"mode": "per_dim", "axis": 1, "target_scopes": "{re}.*BertOutput.*"}
        ],
        "ignored_scopes": ["{re}.*NNCFEmbedding.*", "{re}.*qa_outputs.*", "{re}.*LayerNorm.*"]
    },
    {
        "algorithm": "quantization",
        "preset": "mixed",
        "overflow_fix": "enable",
        "initializer": {
            "range": {
                "num_init_samples": 32,
                "type": "percentile",
                "params":
                {
                    "min_percentile": 0.01,
                    "max_percentile": 99.99
                }
            },
            "batchnorm_adaptation": {
                "num_bn_adaptation_samples": 200
            }
        },
        "scope_overrides": {"activations": {"{re}.*matmul_0": {"mode": "symmetric"}}},
        "ignored_scopes": [
            "{re}.*__add___[0-1]",
            "{re}.*layer_norm_0",
            "{re}.*matmul_1",
            "{re}.*__truediv__*"
        ]
    }
]
